package jp.sourceforge.akjrcp.dropsomething2;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

import org.apache.commons.lang.ArrayUtils;

import jp.sourceforge.akjrcp.ui.GenericParametersFFMpegPreference;

//this
public class DropFileGenericParameterSetting extends GenericParameterSetting {
	public static final String INPUT_VIDEO1="ffmpeg_input_video1";
	public static final String INPUT_AUDIO1="ffmpeg_input_audio1";
	public static final String USE_AVISYNTH="drop_use_avisynth";
	public static final String SAME_DIRECTORY="drop_same_directory";
	public static final String BACKUP="drop_backup";
	public static final String EXPORT_DIR="drop_export_dir";
	public DropFileGenericParameterSetting(Map<String, String> parameters){
		super(parameters);

		customParams=new String[]{GenericParametersFFMpegPreference.EXTENSION,GenericParametersFFMpegPreference.TWO_PASS_ENCODE,
				GenericParametersFFMpegPreference.MAX_FRAME_RATE,
				GenericParametersFFMpegPreference.AFTER_ACTION,
				INPUT_VIDEO1,
				INPUT_AUDIO1,
				USE_AVISYNTH,
				SAME_DIRECTORY,
				BACKUP,
				EXPORT_DIR,
				};
	}
	
	protected Map<String,String> cloneMap(){
		Map<String,String> map=getParameters();
		Map<String,String> newMap=new HashMap<String,String>();
		Iterator<String> iter=map.keySet().iterator();
		while(iter.hasNext()){
			String k=iter.next();
			newMap.put(new String(k), new String(map.get(k)));
		}
		return newMap;
	}
	
	public Object clone(){
		DropFileGenericParameterSetting param=new DropFileGenericParameterSetting(cloneMap());
		return param;
	}
	
}
